﻿using Microsoft.Practices.Prism.Commands;

namespace Prism.Common.Interfaces
{
  /// <summary>
  /// Defines overall application tasks managing capabilities like shutdown.
  /// </summary>
  public interface IApplicationManagerService
  {
    /// <summary>
    /// Application command used to shut down the application.
    /// </summary>
    CompositeCommand ShutDownApplicationCommand { get; }

    /// <summary>
    /// Gets or sets whether the application is currently shutting down.
    /// </summary>
    bool ApplicationIsShuttingDown { get; set; }

    /// <summary>
    /// Gets or sets the zoom factor.
    /// </summary>
    double ZoomFactor { get; set; }
  }
}
